1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
# PICT Drawing Opcodes Version 2
| Opcode | Name | Description | Size (in bytes) of additional data |
| ------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |
| `$0000` | NOP | No operation | 0 |
| `$0001` | Clip | Clipping region Region size |
| `$0002` | BkPat | Background pattern | 8 |
| `$0003` | TxFont | Font number for text (Integer) | 2 |
| `$0004` | TxFace | Text’s font style (0..255) | 1 |
| `$0005` | TxMode | Source mode (Integer) | 2 |
| `$0006` | SpExtra | Extra space (Fixed) | 4 |
| `$0007` | PnSize | Pen size (Point) | 4 |
| `$0008` | PnMode | Pen mode (Integer) | 2 |
| `$0009` | PnPat | Pen pattern | 8 |
| `$000A` | FillPat | Fill pattern | 8 |
| `$000B` | OvSize | Oval size (Point) | 4 |
| `$000C` | Origin | dh, dv (Integer) | 4 |
| `$000D` | TxSize | Text size (Integer) | 2 |
| `$000E` | FgColor | Foreground color (Long) | 4 |
| `$000F` | BkColor | Background color (Long) | 4 |
| `$0010` | TxRatio | Numerator (Point), denominator (Point) | 8 |
| `$0011` | VersionOp | Version (0..255) | 1 |
| `$0012` | BkPixPat | Background pixel pattern Variable; see Listing A-1 on page A-17 | variable |
| `$0013` | PnPixPat | Pen pixel pattern Variable; see Listing A-1 on page A-17 | variable |
| `$0014` | FillPixPat | Fill pixel pattern Variable; see Listing A-1 on page A-17 | variable |
| `$0015` | PnLocHFrac | Fractional pen position (Integer—low word of Fixed); if value is not 0.5, pen position is always set to the picture before each text-drawing operation. | 2 |
| `$0016` | ChExtra | Added width for nonspace characters (Integer) | 2 |
| `$0017` | Reserved for Apple use | Not determined |
| `$0018` | Reserved for Apple use | Not determined |
| `$0019` | Reserved for Apple use | Not determined |
| `$001A` | RGBFgCol | Foreground color (RGBColor) | 6 |
| `$001B` | RGBBkCol | Background color (RGBColor) | 6 |
| `$001C` | HiliteMode | Highlight mode flag: no data; this opcode is sent before a drawing operation that uses the highlight mode | 0 |
| `$001D` | HiliteColor | Highlight color (RGBColor) | 6 |
| `$001E` | DefHilite | Use default highlight color; no data; set highlight to default (from low memory) | 0 |
| `$001F` | OpColor | Opcolor (RGBColor) | 6 |
| `$0020` | Line | pnLoc (Point), newPt (Point) | 8 |
| `$0021` | LineFrom | newPt | (Point) 4 |
| `$0022` | ShortLine | pnLoc (Point), dh (–128..127),dv (–128..127) | 6 |
| `$0023` | ShortLineFrom | dh (–128..127), dv (–128..127) | 2 |
| `$0024` | Reserved for Apple use | Data length (Integer) | data 2 + data length |
| `$0025` | Reserved for Apple use | Data length (Integer) | data 2 + data length |
| `$0026` | Reserved for Apple use | Data length (Integer) | data 2 + data length |
| `$0027` | Reserved for Apple use | Data length (Integer) | data 2 + data length |
| `$0028` | LongText | txLoc (Point), count (0..255), text | 5 + text |
| `$0029` | DHText | dh (0..255), count (0..255), text | 2 + text |
| `$002A` | DVText | dv (0..255), count (0..255), text | 2 + text |
| `$002B` | DHDVText | dh (0..255), dv (0..255), count(0..255), | text 3 + text |
| `$002C` | fontName | Data length (Integer), old font ID (Integer), name length (0..255), | font name\*5 + name length |
| `$002D` | lineJustify | Operand data length (Integer),intercharacter spacing (Fixed), total extra space for justification (Fixed)† | 10 |
| `$002E` | glyphState | Data length (word), followed by these 1-byte Boolean values: outline preferred, preserve glyph, fractional widths, scaling disabled |
| `$002F` | Reserved for Apple use | Data length (Integer), data 2 + data length |
| `$0030` | frameRect | Rectangle (Rect) | 8 |
| `$0031` | paintRect | Rectangle (Rect) | 8 |
| `$0032` | eraseRect | Rectangle (Rect) | 8 |
| `$0033` | invertRect | Rectangle (Rect) | 8 |
| `$0034` | fillRect | Rectangle (Rect) | 8 |
| `$0035` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0036` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0037` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0038` | frameSameRect | Rectangle (Rect) | 0 |
| `$0039` | paintSameRect | Rectangle (Rect) | 0 |
| `$003A` | eraseSameRect | Rectangle (Rect) | 0 |
| `$003B` | invertSameRect | Rectangle (Rect) | 0 |
| `$003C` | fillSameRect | Rectangle (Rect) | 0 |
| `$003D` | Reserved for Apple use | | 0 |
| `$003E` | Reserved for Apple use | | 0 |
| `$003F` | Reserved for Apple use | | 0 |
| `$0040` | frameRRect | Rectangle (Rect)‡ | 8 |
| `$0041` | paintRRect | Rectangle (Rect)‡ | 8 |
| `$0042` | eraseRRect | Rectangle (Rect)‡ | 8 |
| `$0043` | invertRRect | Rectangle (Rect)‡ | 8 |
| `$0044` | fillRRect | Rectangle (Rect)‡ | 8 |
| `$0045` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0046` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0047` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0048` | frameSameRRect | Rectangle (Rect) | 0 |
| `$0049` | paintSameRRect | Rectangle (Rect) | 0 |
| `$004A` | eraseSameRRect | Rectangle (Rect) | 0 |
| `$004B` | invertSameRRect | Rectangle (Rect) | 0 |
| `$004C` | fillSameRRect | Rectangle (Rect) | 0 |
| `$004D` | Reserved for Apple use | | 0 |
| `$004E` | Reserved for Apple use | | 0 |
| `$004F` | Reserved for Apple use | | 0 |
| `$0050` | frameOval | Rectangle (Rect) | 8 |
| `$0051` | paintOval | Rectangle (Rect) | 8 |
| `$0052` | eraseOval | Rectangle (Rect) | 8 |
| `$0053` | invertOval | Rectangle (Rect) | 8 |
| `$0054` | fillOval | Rectangle (Rect) | 8 |
| `$0055` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0056` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0057` | Reserved for Apple use | 8 bytes of data | 8 |
| `$0058` | frameSameOval | Rectangle (Rect) | 0 |
| `$0059` | paintSameOval | Rectangle (Rect) | 0 |
| `$005A` | eraseSameOval | Rectangle (Rect) | 0 |
| `$005B` | invertSameOval | Rectangle (Rect) | 0 |
| `$005C` | fillSameOval | Rectangle (Rect) | 0 |
| `$005D` | Reserved for Apple use | | 0 |
| `$005E` | Reserved for Apple use | | 0 |
| `$005F` | Reserved for Apple use | | 0 |
| `$0060` | frameArc | Rectangle (Rect), startAngle, arcAngle | 12 |
| `$0061` | paintArc | Rectangle (Rect), startAngle, arcAngle | 12 |
| `$0062` | eraseArc | Rectangle (Rect), startAngle, arcAngle | 12 |
| `$0063` | invertArc | Rectangle (Rect), startAngle, arcAngle | 12 |
| `$0064` | fillArc | Rectangle (Rect), startAngle, arcAngle | 12 |
| `$0065` | Reserved for Apple use | 12 bytes of data | 12 |
| `$0066` | Reserved for Apple use | 12 bytes of data | 12 |
| `$0067` | Reserved for Apple use | 12 bytes of data | 12 |
| `$0068` | frameSameArc | Rectangle (Rect) | 4 |
| `$0069` | paintSameArc | Rectangle (Rect) | 4 |
| `$006A` | eraseSameArc | Rectangle (Rect) | 4 |
| `$006B` | invertSameArc | Rectangle (Rect) | 4 |
| `$006C` | fillSameArc | Rectangle (Rect) | 4 |
| `$006D` | Reserved for Apple use | 4 bytes of data | 4 |
| `$006E` | Reserved for Apple use | 4 bytes of data | 4 |
| `$006F` | Reserved for Apple use | 4 bytes of data | 4 |
| `$0070` | framePoly | Polygon (Poly) | Polygon size |
| `$0071` | paintPoly | Polygon (Poly) | Polygon size |
| `$0072` | erasePoly | Polygon (Poly) | Polygon size |
| `$0073` | invertPoly | Polygon (Poly) | Polygon size |
| `$0074` | fillPoly | Polygon (Poly) | Polygon size |
| `$0075` | Reserved for Apple use | Polygon (Poly) | Polygon size |
| `$0076` | Reserved for Apple use | Polygon (Poly) | Polygon size |
| `$0077` | Reserved for Apple use | Polygon (Poly) | Polygon size |
| `$0078` | frameSamePoly | (Not yet implemented) | 0 |
| `$0079` | paintSamePoly | (Not yet implemented) | 0 |
| `$007A` | eraseSamePoly | (Not yet implemented) | 0 |
| `$007B` | invertSamePoly | (Not yet implemented) | 0 |
| `$007C` | fillSamePoly | (Not yet implemented) | 0 |
| `$007D` | Reserved for Apple use | | 0 |
| `$007E` | Reserved for Apple use | | 0 |
| `$007F` | Reserved for Apple use | | 0 |
| `$0080` | frameRgn | Region (Rgn) | Region size |
| `$0081` | paintRgn | Region (Rgn) | Region size |
| `$0082` | eraseRgn | Region (Rgn) | Region size |
| `$0083` | invertRgn | Region (Rgn) | Region size |
| `$0084` | fillRgn | Region (Rgn) | Region size |
| `$0085` | Reserved for Apple use | Region (Rgn) | Region size |
| `$0086` | Reserved for Apple use | Region (Rgn) | Region size |
| `$0087` | Reserved for Apple use | Region (Rgn) | Region size |
| `$0088` | frameSameRgn | (Not yet implemented) | 0 |
| `$0089` | paintSameRgn | (Not yet implemented) | 0 |
| `$008A` | eraseSameRgn | (Not yet implemented) | 0 |
| `$008B` | invertSameRgn | (Not yet implemented) | 0 |
| `$008C` | fillSameRgn | (Not yet implemented) | 0 |
| `$008D` | Reserved for Apple use | | 0 |
| `$008E` | Reserved for Apple use | | 0 |
| `$008F` | Reserved for Apple use | | 0 |
| `$0090` | BitsRect | CopyBits with clipped rectangle | Variable§¶; see Listing A-2 on page A-17 |
| `$0091` | BitsRgn | CopyBits with clipped region | Variable§¶; see Listing A-3 on page A-18 |
| `$0092` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0093` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0094` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0095` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0096` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0097` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$0098` | PackBitsRect | Packed CopyBits with clipped rectangle | Variable§; see Listing A-2 on page A-17 |
| `$0099` | PackBitsRgn | Packed CopyBits with clipped rectangle | Variable§; see Listing A-3 on page A-18 |
| `$009A` | DirectBitsRect | PixMap, srcRect, dstRect, mode (Integer), PixData | Variable |
| `$009B` | DirectBitsRgn | PixMap, srcRect, dstRect, mode (Integer), maskRgn, PixData | Variable |
| `$009C` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$009D` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$009E` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$009F` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| `$00A0` | ShortComment | Kind | (Integer) 2 |
| `$00A1` | LongComment | Kind (Integer), size (Integer), data | 4 + data |
| `$00A2` | Reserved for Apple use | Data length (Integer), data | 2 + data length |
| … | … | … | … |
| `$00AF` | Reserved | for Apple use Data length (Integer), data | 2 + data length |
| `$00B0` | Reserved | for Apple use | 0 |
| … | … | … | … |
| `$00CF` | Reserved | for Apple use | 0 |
| `$00D0` | Reserved | for Apple use Data length (Long), data | 4 + data length |
| … | … | … | … |
| `$00FE` | Reserved | for Apple use Data length (Long), data | 4 + data length |
| `$00FF` | OpEndPic | End of picture | 2 |
| `$0100` | Reserved for Apple use | 2 bytes of data | 2 |
| `$01FF` | Reserved for Apple use | 2 bytes of data | 2 |
| `$0200` | Reserved | for Apple use 4 bytes of data 4 |
| `$02FF` | Version | Version number of picture 2 |
| … | … | … | … |
| `$0BFF` | Reserved for Apple use | 22 bytes of data | 22 |
| `$0C00` | HeaderOp | For extended version 2: version (Integer), reserved (Integer), hRes, vRes (Fixed), srcRect, reserved (Long);for version 2: opcode 24 |
| `$0C01` | Reserved for Apple use | 24 bytes of data | 24 |
| … | … | … | … |
| `$7F00` | Reserved for Apple use | 254 bytes of data | 254 |
| … | … | … | … |
| `$7FFF` | Reserved for Apple use | 254 bytes of data | 254 |
| `$8000` | Reserved | for Apple use | 0 |
| … | … | … | … |
| `$80FF` | Reserved | for Apple use | 0 |
| `$8100` | Reserved | for Apple use Data length (Long), data 4 + data length |
| … | … | … | … |
| `$8200` | CompressedQuickTime | Data length (Long), data (private to QuickTime) | 4 + data length |
| `$8201` | UncompressedQuickTime | Data length (Long), data (private to QuickTime) | 4 + data length |
| `$FFFF` | Reserved | for Apple use Data length (Long), data | 4 + data length |